# -*- coding: utf-8 -*-

[workspace]
members = [
    # Webserver CGI frontend:
    "cms-cgi",          # Webserver CGI executable.

    # Daemons:
    "cms-backd",        # Backend daemon.
    "cms-fsd",          # Database access daemon.
    "cms-postd",        # Post execution daemon.

    # Daemon communication sockets:
    "cms-socket",       # Generic socket abstraction.
    "cms-socket-back",  # Backend daemon access socket.
    "cms-socket-db",    # Database daemon access socket.
    "cms-socket-post",  # Post daemon access socket.

    # Helper libraries:
    "cms-ident",        # CMS page identifier encapsulation.
    "cms-systemd",      # Systemd daemon helper routines.
    "cms-seccomp",      # Seccomp abstraction.
]
resolver = "2"

[workspace.package]
edition = "2021"
license = "MIT OR Apache-2.0"
authors = [ "Michael Büsch <m@bues.ch>" ]
rust-version = "1.82"

[workspace.dependencies]
anyhow = "1"
bincode = "1"
build-target = "0.4"
chrono = "0.4"
clap = "4"
configparser = "3"
html-escape = "0.2"
image = { version = "0.25", default-features = false }
inotify = "0.11"
libc = "0.2"
lru = "0.12"
multer = "3"
peekable-fwd-bwd = "1"
pyo3 = "0.23"
querystrong = "0.3"
rand = "0.8"
sd-notify = "0.4"
seccompiler = "0.4"
serde = "1"
tokio = "1"
url-escape = "0.1"

cms-ident = { version = "1", path = "./cms-ident" }
cms-seccomp = { version = "1", path = "./cms-seccomp" }
cms-socket = { version = "1", path = "./cms-socket" }
cms-socket-back = { version = "1", path = "./cms-socket-back" }
cms-socket-db = { version = "1", path = "./cms-socket-db" }
cms-socket-post = { version = "1", path = "./cms-socket-post" }
cms-systemd = { version = "1", path = "./cms-systemd" }

[profile.release]
opt-level = 3
lto = "fat"
panic = "abort"
strip = "symbols"
debug-assertions = false
overflow-checks = true
codegen-units = 1

# vim: ts=4 sw=4 expandtab
